#include<bits/stdc++.h>
using namespace std;
long long n,q,f[8005],m[8005];
struct node{
	int num,data;
}a[8005];
bool cmp(node x,node y){
	if(x.data==y.data) return x.num<y.num;
	return x.data<y.data;
}
void Sort()
{
	for(int i=1;i<=n;i++){
		a[i].data=m[i];
		a[i].num=i;
	}
	sort(a+1,a+n+1,cmp);
	for(int i=1;i<=n;i++)
		f[a[i].num]=i;
}
int main()
{
	freopen("sort.in","r",stdin);
	freopen("sort.out","w",stdout);
	scanf("%lld%lld",&n,&q);
	for(int i=1;i<=n;i++)
		scanf("%lld",&m[i]);
	int temp,x,y;
	Sort();
	for(int i=1;i<=q;i++){
		scanf("%d%d",&temp,&x);
		if(temp==1){
			scanf("%d",&y);
			m[x]=y;
			Sort();
		}
		if(temp==2)
			printf("%lld\n",f[x]);
	}
	return 0;
}

